package cn.wolfcode.p2p.base.domain;

import com.alibaba.fastjson.JSON;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

import java.text.DateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

/**
 * 实名认证对象模型
 */
@Setter
@Getter
public class RealAuth extends AuditBaseDomain {

    //性别
    public static final int SEX_MALE = 1;
    public static final int SEX_FEMALE = 0;

    /**
     * 真实姓名
     */
    private String realName;
    /**
     * 性别
     */
    private Byte sex = SEX_FEMALE;
    /**
     * 出生日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date bornDate;

    /**
     * 身份证号
     */
    private String idNumber;
    /**
     * 身份证所在地
     */
    private String address;

    /**
     * 身份证正面
     */
    private String image1;
    /**
     * 身份证反面
     */
    private String image2;

    /**
     * 性别名称
     */
    public String sexDisplay(){
        return sex == 0 ? "小姐姐":"小哥哥";
    }

    /**
     * json
     */
    public String getJsonString(){
        Map<String,Object> map = new HashMap<>();
        map.put("id",getId());
        map.put("username",applier.getUsername());
        map.put("realName",realName);
        map.put("idNumber",idNumber);
        map.put("sex",sexDisplay());
        map.put("birthDate", DateFormat.getDateInstance().format(bornDate));
        map.put("address",address);
        map.put("image1",image1);
        map.put("image2",image2);
        map.put("remark",remark);
        return JSON.toJSONString(map);
    }

}